package com.bsy.videostation.model.res


data class VideoInfo(
    val cycle_time: Int? = 0,
    val homepage_id: Int? = 0,
    val homepage_name: String? = "",
    val md5: String? = "",
    val panelReleases: List<PanelRelease>? = listOf(),
    val sink_size: Int? = 0,
    val tab_config: TabConfig? = TabConfig(),
    val tab_id: Int? = 0,
    val tab_name_en: String? = ""
)

data class PanelRelease(
    val panel: Panel? = Panel(),
    val video_contents: List<VideoContent>? = listOf()
)

data class Panel(
    val allAppId: List<Int?>? = listOf(),
    val border_radius: List<String?>? = listOf(),
    val data_from: DataFrom? = DataFrom(),
    val fillMechanism: Int? = 0,
    val fillMechanismMargin: String? = "",
    val fillType: Int? = 0,
    val fixed_num: Int? = 0,
    val focus_shape: Int? = 0,
    val is_solid: Int? = 0,
    val layout_attribute: Int? = 0,
    val layout_id: Int? = 0,
    val layout_name: String? = "",
    val panel_group_category: Int? = 0,
    val panel_id: String? = "",
    val panel_name: String? = "",
    val panel_source_type: String? = "",
    val panel_title: String? = "",
    val panel_version: String? = "",
    val title: Title? = Title()
)

data class DataFrom(
    val type: String? = ""
)

data class Title(
    val align: Int? = 0,
    val color: String? = "",
    val size: Int? = 0,
    val text: String? = "",
    val textEn: String? = ""
)

data class VideoContent(
    val bg: String? = "",
    val block: Block? = Block(),
    val focusable: Int? = 0,
    val height: Int? = 0,
    val id: String? = "",
    val parents: String? = "",
    val rating: String? = "",
    val type: String? = "",
    val width: Int? = 0,
    val x: Int? = 0,
    val y: Int? = 0
)

data class Block(
    val adFlag: Int? = 0,
    val appId: Int? = 0,
    val block_content_info: BlockContentInfo? = BlockContentInfo(),
    val block_new_title_info: BlockNewTitleInfo? = BlockNewTitleInfo(),
    val block_type_info: BlockTypeInfo? = BlockTypeInfo(),
    val content_type: String? = "",
    val intervene_flag: Boolean? = false,
    val normal_special_flag: Int? = 0,
    val paid: Int? = 0,
    val params: String? = "",
    val vector_tag_flag: Int? = 0
)

data class BlockContentInfo(
    val action: String? = "",
    val app_info: AppInfo? = AppInfo(),
    val content_status: Int? = 0,
    val imgs: Imgs? = Imgs(),
    val show_title: Int? = 0,
    val title: String? = ""
)

data class AppInfo(
    val app_img_type: String? = "",
    val app_third_id: String? = "",
    val app_url: String? = "",
    val supplier: String? = ""
)

data class Imgs(
    val allPoster: List<AllPoster?>? = listOf(),
    val focus_img_url: String? = "",
    val poster: Poster? = Poster()
)

data class AllPoster(
    val language: String? = "",
    val size: String? = "",
    val style: String? = "",
    val url: String? = "",
    val videoContentId: Int? = 0
)
data class Poster(
    val fall_image: String? = "",
    val images: List<String?>? = listOf(),
    val special_poster_flag: Int? = 0
)

data class BlockNewTitleInfo(
    val sub_title: SubTitle? = SubTitle(),
    val title: TitleX? = TitleX()
)

data class SubTitle(
    val show: Int? = 0,
    val text: String? = ""
)

data class TitleX(
    val show: Int? = 0,
    val text: String? = ""
)
data class BlockTypeInfo(
    val lucency_flag: String? = ""
)